package com.sfl.learn.work.module1;

import java.util.Arrays;

/**
 * 编程题 自定义数组扩容规则，当已存储元素数量达到总容量的 80%时，扩容 1.5 倍。
 * 例如，总容量是 10，当输入第 8 个元素时，数组进行扩容，容量从 10 变 15。
 */
public class Four {
    public static void main(String[] args) {
        //数组的初始化容量
        int[] arr = new int[10];
        int size = 0;
        //模拟输入数组的元素
        for (int i = 0; i < 10; i++) {
            if (size == 8) {
                //扩容
                int[] newArr = new int[15];
                for (int j = 0; j < size; j++) {
                    newArr[j] = arr[j];
                }
                arr = newArr;
                arr[size++] = i;
                System.out.println("数组扩容：" + arr.length);
            } else {
                arr[size++] = i;
            }
        }
        System.out.println(Arrays.toString(arr));
        System.out.println("数组元素数量：" + size);
    }
}
